//////////////////////////////////////////////////////////////////////////

#ifndef _SERVERSTATEPACKETONCLIENT_H_
#define _SERVERSTATEPACKETONCLIENT_H_

//////////////////////////////////////////////////////////////////////////

#ifndef _SERVERPACKETONCLIENT_H_
#include "serverpacketonclient.h"
#endif

#ifndef _SERVERSTATEPACKET_H_
#include "serverstatepacket.h"
#endif

//////////////////////////////////////////////////////////////////////////


/** Packets with server state, that come from server to client
*
*  @author   Roman Pasechnik
*  @since    Nov 11th, 2009
*  @updated  Nov 11th, 2009
*/
class ServerStatePacketOnClient : public ServerPacketOnClient
{
//////////////////////////////////////////////////////////////////////////

public:

//////////////////////////////////////////////////////////////////////////


    /** Constructor */
    ServerStatePacketOnClient( const ServerStatePacket& _serverStatePacket );


    /** Destructor */
    virtual ~ServerStatePacketOnClient();


//////////////////////////////////////////////////////////////////////////


    /** Visit server network */
    virtual void VisitClientEngine( ClientEngine* _client ) const;


//////////////////////////////////////////////////////////////////////////

private:

//////////////////////////////////////////////////////////////////////////


    /** Server state packet */
    ServerStatePacket m_ServerStatePacket;


//////////////////////////////////////////////////////////////////////////
};


//////////////////////////////////////////////////////////////////////////

#endif

//////////////////////////////////////////////////////////////////////////
